//#define  _CRT_SECURE_NO_WARNINGS
//#include <string>
//#include <unordered_map>
//#include <iostream>
//using namespace std;
//
//int main()
//{
//	string str1, str2, str3;
//	cin >> str1 >> str2 >> str3;
//	unordered_map<char, char> unmap;
//	for (int i = 0; i < str2.size(); i++)
//	{
//		unmap.insert({ str2[i], str1[i] });
//	}
//	if (unmap.size() == 25)
//	{
//		char ch1 = 0, ch2 = 0;
//		for (int i = 'A'; i <= 'Z'; i++)
//		{
//			ch1 ^= i;
//			ch2 ^= i;
//		}
//		//for (auto e : str1)
//		//	ch1 ^= e;
//		//for (auto e : str2)
//		//	ch2 ^= e;
//		for (auto& e : unmap)
//		{
//			ch1 ^= e.second;
//			ch2 ^= e.first;
//		}
//		unmap.insert({ ch2, ch1 });
//	}
//	string ret;
//	for (auto e : str3)
//	{
//		if (unmap.count(e))
//			ret += unmap[e];
//		else
//		{
//			cout << "@" << endl;
//			return 0;
//		}
//	}
//	cout << ret << endl;
//}